package com.two.lbms.vo;

import java.time.LocalDateTime;

import com.fasterxml.jackson.annotation.JsonFormat;
import jakarta.validation.constraints.Size;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * @author hjx
 * @version V1.0
 * @Date 2023/7/29 9:45
 */

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Reader {

    /**
     * 读者id
     */
    private Integer id;

    /**
     * 读者姓名
     */
    @Size(max = 30, message = "读者姓名最大长度要小于 30")
    private String readerName;

    /**
     * 性别
     */
    @Size(max = 10, message = "性别最大长度要小于 10")
    private String sex;

    /**
     * 注册时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime registerDate;

    /**
     * 读者身份类型：vip/ornot
     */
    @Size(max = 30, message = "读者身份类型：vip/ornot最大长度要小于 30")
    private String readerType;

    /**
     * 手机号
     */
    private String phone;

    /**
     * 家庭地址
     */
    @Size(max = 100, message = "家庭地址最大长度要小于 100")
    private String address;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime updateTime;

    /**
     * 身份证号
     */
    @Size(max = 30, message = "身份证号最大长度要小于 30")
    private String idCard;

    /**
     * 是否有效
     */
    private Integer isValid;

    /**
     * 违规次数
     */
    private Integer violationTimes;
}